A portion of the disclosure recited in the specification contains material which is subject to copyright protection. Specifically, portions of source code, scripting language and program model and design information appear in the specification and in the Appendix. The copyright owner has no objection to the facsimile reproduction of the specification as filed in the Patent and Trademark Office. Otherwise all copyright rights are reserved.
Automatic call distribution centers, also called ACDs or xe2x80x9ccall centers,xe2x80x9d route telephone calls from customers who place the calls, to agents who respond to the calls. A typical application for a call center is in a customer support department where customers seek information to assist them in using a product.
Modern call centers provide many features to make the handling of calls and exchange of information more efficient. Not only do call centers strive to assist the customers in stating and categorizing their questions, and the agents in responding to the questions, but the call centers also provide supervisors who manage the agents with information so that the supervisors can make decisions on how to best operate the call center. Also, call centers provide information to assist product manufacturers, or service providers, in improving the quality of their customer service department, particular product or service, etc.
For example, a common feature of call centers today is to allow a customer/caller to select from a menu of choices to help categorize their needs. Often, this pre-selection by the customer allows the call center to screen and categorize customers so that customers can be matched up with the proper resources to handle the calls. Call centers also have mechanisms for xe2x80x9cqueuingxe2x80x9d the calls according to the screening information, availability of agents, etc. Call centers can also maintain a database of previous calls from the same caller, or customer. This database can be available to an agent so that an agent will be familiar with the history of the callers"" problems, needs, etc. Call centers also log data on calls and call handling. For example, the time each agent spends per call may be a statistic that is of interest to a supervisor in order to judge agents"" performances. Also, analysis of the types of calls being received as where, for example, recurring problems appear, can be used to identify problems in a product or service.
The products and services available in today""s information age have become more complex and implicate complex technology. The knowledge necessary to use, configure and upgrade products has grown, inevitably translating into a need for more customer support. Unfortunately, today""s call centers do not always provide optimum exchange of information. The almost exclusive use of the telephone as the sole communication channel between a customer and agent does not always provide flexible and efficient exchange of information. The shortcomings of today""s call centers are especially deficient in light of the increasing volume of calls that call centers must handle. It is not uncommon for call centers to have hundreds of agents handling thousands of calls each day. A call center""s operating overhead can be in the millions of dollars per year. The impact of a good customer support center, however, can be reflected in revenues in the hundreds of millions, thus making an efficient and effective call center vital to a company""s successful operation. However, today""s call centers have failed to adapt to provide an efficient exchange of information between the call center and the customers in light of today""s products and technology.
For example, it is common for computer users to download software applications, software updates, drivers, data, etc. from the Internet. In order to support these software products companies provide online documentation in the form of notes, instructions, lists of xe2x80x9cFrequently Asked Questionsxe2x80x9d (FAQs) and other documentation. However, the Internet""s presentation of information is often inadequate to all but the most sophisticated computer and Internet users. Even when looking at a single manufacturer""s website, a customer may spend a long time only to determine that the answer to their question does not exist within the wealth of information provided at the website. Customers are left to their own devices to figure out how to search among web-based information and often can not make effective automated searches because they don""t know how to characterize their problems in a few keywords.
As an alternative to online documents, some manufacturers allow more customized assistance by providing, for example, an e-mail form or address to which the customer may send a question. However, in some cases, the customer may desire immediate response to which an e-mail response is not sufficient. Also, it is often awkward to state a problem without interactive communication. This is especially true with computer-related products where a discussion of a problem is often a mix of acronyms, abbreviations, syntax symbols and other peculiar uses of the written word beyond mere conversational text. Also, questions about using a user interface are difficult to state with text alone since locations, controls, objects, button presses, etc. need to be discussed.
Another form in Internet communication that is sometimes used in the customer support arena is xe2x80x9creal-time chat,xe2x80x9d or, simply, xe2x80x9cchat.xe2x80x9d The chat form of communication allows typed text to appear immediately on another person""s screen so that two or more people may have a typed xe2x80x9cconversationxe2x80x9d by using their computers over a network such as the Internet. In customer support, moderated chat is another communication type that can be used to give information to customers but it represents the same type of personnel drain to the customer service provider that voice communication presents and, thus, is not a popular form of customer service support unless some screening or prioritizing can be performed. Typically, this means a customer must submit a request for a chat with an agent. In these systems, the customer is at the disadvantage of not knowing when an agent will appear and may thus have to wait online whether they desire to be in front of their computer or not.
Of course, the customer can revert to the traditional communication method of picking up the telephone and dialing a customer support center. However, this reduces the customer to voice descriptions of their problem which, in the computer and software world, may not translate well. For example, anyone who has tried to relay a long uniform resource locator (URL) by calling out the slashes and sub-domain names of text that is a collection of garbled non-words at best, and then having to verify the name when it is repeated back by the person at the other end, can understand the value of being able to use text or other images in a conversation to describe a problem. Also, many of today""s customers use their single telephone line to connect to the Internet. This means it is not possible for a customer to simultaneously converse about a problem with an Internet-related product and test out a suggested solution in real time.
Thus, it is desirable to provide a call center system that enhances the ability of a call center to exchange information with a customer. Such a call center should provide benefits in efficiency and effectiveness to both customers, agents, supervisors, and the manufacturer of a product, or provider of a service, to which the call center services are directed.
The present invention integrates multiple communication types in a call center and provides benefits when one or more communication types are used to provide a caller with information. The communication types can be chat, email, voicemail, Internet Protocol (IP) voice, traditional telephone, web page, digital image, digital video and other types. Features of the invention include allowing a single agent to handle multiple customers (endpoints) on multiple communication channel endpoints. The system prioritizes and assigns calls to agents based on a number of criteria. One criterion is the number of endpoints assigned to an agent and that agent""s availability. Another criterion is the assigned priority of a customer call. Another criterion is the priority of service provided to a specific customer. Another criterion is the efficiency of a given agent. Another criterion is the agent""s efficiency at handling a particular communication medium.
The agent has control over accepting calls in a multiple endpoint environment via an agent graphical user interface. Features of the agent graphical user interface include allowing the agent to drag and drop canned responses, images, URLs, or other information into a window for immediate display on a customer""s computer.
The system also provides for detailed agent performance tracking. One type of performance that is tracked is the agent""s performance on different communication types. The system takes into consideration how many lines or endpoints an agent had assigned to them.
The system provides failure recovery by using a backup system. If the network server fails, then the customer is connected directly to an agent in a peer-to-peer arrangement. When a failed computer comes back on line, the statistics gathered are then used to synchronize the returned computer.
The system provides extensive call recording or xe2x80x9cdata wakexe2x80x9d information gathering. The system provides flexibility in transferring large amounts of historic and current data (Datawake(trademark) brand information gathering) from one agent to another, and from storage to an active agent.
The system integrates human agents"" knowledge with an automated knowledge base. The system provides for an agent updating, or adding, to the knowledge base in real time. The system also provides for xe2x80x9cblendingxe2x80x9d of different communication types. For example, HTML can be included with chat-text so that, for example, a URL can be provided that can be clicked on to take a customer to a specific website. Agents may be allocated to different communication types as, for example, where agents handling telephone calls are re-allocated to handle web requests where web requests communication type calls suddenly increase in frequency.
In one embodiment, the invention provides an automatic call distribution system for transferring information between customers and agents, the automatic call distribution system includes a network interface for transferring information between customers and agents through a computer network; and a control system for simultaneously assigning a plurality of customers to a single agent through one or more of the interfaces.